home *** CD-ROM | disk | FTP | other *** search
/ The Arsenal Files 1 / The Arsenal Files (Arsenal Computer).ISO / novell / btr61.exe / BTR61.TXT
Text File  |  1993-12-03  |  76KB  |  1,746 lines

  1.  
  2.               NOVELL TECHNICAL INFORMATION DOCUMENT
  3.  
  4. TITLE:              NetWare Btrieve NLM v6.10c
  5. DOCUMENT ID:        TID000059
  6. DOCUMENT REVISION:  B
  7. DATE:               02DEC93
  8. ALERT STATUS:       Yellow
  9. INFORMATION TYPE:   Issue
  10. README FOR:         BTR61.EXE
  11.  
  12. NOVELL PRODUCT and VERSION:
  13. NetWare Btrieve NLM 6.10
  14.  
  15. ABSTRACT:
  16.  
  17. BTR61.EXE contains NetWare Btrieve version 6.10c.  It also provides
  18. installation and upgrade information and descriptions of the NetWare Btrieve
  19. v6.10c program files.
  20.  
  21. ──────────────────────────────────────────────────────────────────────────────
  22. DISCLAIMER
  23. THE ORIGIN OF THIS INFORMATION MAY BE INTERNAL OR EXTERNAL TO NOVELL.  NOVELL
  24. MAKES EVERY EFFORT WITHIN ITS MEANS TO VERIFY THIS INFORMATION.  HOWEVER, THE
  25. INFORMATION PROVIDED IN THIS DOCUMENT IS FOR YOUR INFORMATION ONLY.  NOVELL
  26. MAKES NO EXPLICIT OR IMPLIED CLAIMS TO THE VALIDITY OF THIS INFORMATION.
  27. ──────────────────────────────────────────────────────────────────────────────
  28.  
  29.  
  30. ISSUE
  31.  
  32. Contents
  33. ========
  34.  
  35.         NetWare Btrieve v6.1 in the NetWare Environment
  36.         Before You Begin
  37.         Installation Procedure
  38.         NetWare Btrieve v6.1 Upgrade Information
  39.            NetWare Btrieve v6.1 File Recovery
  40.            NetWare Btrieve v6.1 File Format
  41.            NetWare Btrieve v6.1 Record Locking
  42.            NetWare Btrieve v6.1 Operations
  43.            NetWare Btrieve v6.1 Utilities
  44.            NetWare Btrieve v6.1 Requesters
  45.            NetWare Btrieve v6.1 Communications Programs
  46.            NetWare Btrieve v6.1 Status Codes
  47.         NetWare Btrieve v6.1 Program Files
  48.            Components of NetWare Btrieve v6.1
  49.            NetWare Btrieve v6.10c Upgrade Files
  50.         Code Changes in NetWare Btrieve v6.10c
  51.         NetWare Btrieve Documentation
  52.            Documentation Updates, September 1993
  53.            Printing NetWare Btrieve Documentation
  54.            Associated Documents
  55.         Novell Fulfillment
  56.  
  57.  
  58. NetWare Btrieve v6.1 in the NetWare Environment
  59. ===============================================
  60.  
  61.      The NetWare 3 (v3.11 and v3.12) and NetWare 4 (v4.0 and v4.01) operating
  62.      systems provide a nonpreemptive, multitasking environment.  NetWare
  63.      Loadable Modules (NLMs) reside in server memory with the NetWare
  64.      operating system.
  65.  
  66.      IMPORTANT:     In a NetWare 4 environment, NetWare Btrieve v6.1 runs at
  67.                     the highest privilege level (domain 0), with direct access
  68.                     to the NetWare operating system.  You cannot run NetWare
  69.                     Btrieve v6.1 in protected mode (domain 1, 2, or 3).
  70.  
  71.      You can run NetWare Btrieve v6.1 in a NetWare 3 (v3.11 and v3.12) or a
  72.      NetWare 4 (v4.0 and v4.01) environment.  The list of NetWare products
  73.      with which you can run NetWare Btrieve v6.1 will be updated as the
  74.      products become available and are tested.
  75.  
  76.  
  77. Before You Begin
  78. ================
  79.  
  80.      Before you proceed with the installation procedure in the next section,
  81.      perform these preliminary steps:
  82.  
  83.           1. If you have an earlier version of NetWare Btrieve loaded on your
  84.           system, unload it before you install NetWare Btrieve v6.10c.
  85.  
  86.           2. If you have an earlier version of CLIB.NLM loaded on your system,
  87.           unload it before you load the new version of CLIB.NLM.
  88.  
  89.           3. If you have a later (more recent) version of CLIB.NLM on your
  90.           system, use that version rather than installing the version that
  91.           comes with this release of Btrieve.
  92.  
  93.  
  94. Installation Procedure
  95. ======================
  96.  
  97.      To upgrade your existing NetWare Btrieve program files in a NetWare 3
  98.      (v3.11 or v3.12) or NetWare 4 (v4.0 or v4.01) environment, follow the
  99.      installation procedure outlined in the following table.  An "X" in either
  100.      of the first two columns indicates that the step applies to that NetWare
  101.      environment.
  102.  
  103.      NOTE:     The following installation procedure replaces the NetWare
  104.                INSTALL procedure documented in Chapter 3 in the "Btrieve
  105.                Installation and Operation" manual.  Upon completion of this
  106.                installation procedure, refer to "Configuring Btrieve" in
  107.                Chapter 3 in the "Btrieve Installation and Operation" manual.
  108.  
  109.  
  110.      NetWare   NetWare
  111.      v3.11     3.12/4.x       Installation Procedure
  112.      ------    --------       -----------------------
  113.  
  114.                               From the NetWare Btrieve v6.10c Upgrade source
  115.                               media:
  116.  
  117.      X                        1.  Copy the AFTER311.NLM, CLIB.NLM, and
  118.                               NWSNUT.NLM files in the \NW311 directory to the
  119.                               \SYSTEM directory on the NetWare server.
  120.  
  121.                               NOTE:  NetWare v3.12 and NetWare v4.x include
  122.                               these files, so you do *not* need to copy them
  123.                               if you are using either of those versions of the
  124.                               operating system.  Note that if you *do* attempt
  125.                               to use these NetWare v3.11-specific files in a
  126.                               NetWare v3.12 or a NetWare v4.x environment,
  127.                               your server may end abnormally.
  128.  
  129.      X         X              2.  Copy all the .NLM files and corresponding
  130.                               .HLP files in the \SYSTEM directory to the
  131.                               \SYSTEM directory (or to the appropriate
  132.                               subdirectory for your configuration) on the
  133.                               NetWare server.
  134.  
  135.      X         X              3.  Copy the BSTART.NCF and BSTOP.NCF files in
  136.                               the \SYSTEM directory to the \SYSTEM directory
  137.                               (or to the appropriate subdirectory for your
  138.                               configuration) on the NetWare server.
  139.  
  140.      X         X              4.  Copy all the program files in the \PUBLIC
  141.                               directory to the \PUBLIC directory (or to the
  142.                               appropriate subdirectory for your configuration)
  143.                               on the NetWare server.
  144.  
  145.      X                        NOTE:  Copy the NWLOCALE.DLL file in the
  146.                               \PUBLIC\OS2 or \PUBLIC\WIN directory to the
  147.                               appropriate subdirectory on the NetWare server
  148.                               or on the hard drive of the client workstation.
  149.  
  150.                               NetWare v3.12 and v4.x includes these files, so
  151.                               you do not need to copy them.
  152.  
  153.                X              5.  Copy the .MSG files in the \SYSTEM and
  154.                               \PUBLIC directories to the appropriate language
  155.                               subdirectory in \SYSTEM\NLS on the NetWare
  156.                               server.
  157.  
  158.      X         X              6.  Use the Btrieve Setup utility to configure
  159.                               NetWare Btrieve according to your application's
  160.                               requirements.  For more information about the
  161.                               Setup utility, see Chapter 3, "Installing and
  162.                               Configuring Btrieve" in the "Btrieve
  163.                               Installation and Operation" manual.
  164.  
  165.  
  166. NetWare Btrieve v6.1 Upgrade Information
  167. ========================================
  168.  
  169.      For a description of the enhancements to NetWare Btrieve v6.1, refer to
  170.      Chapter 1 of the "Btrieve Installation and Operation" manual.
  171.  
  172.      Before you start NetWare Btrieve v6.1, read the following sections in
  173.      this document.
  174.  
  175.           - NetWare Btrieve v6.1 File Recovery -- Outlines how to ensure
  176.           uncorrupted Btrieve files when upgrading to NetWare Btrieve v6.10c.
  177.  
  178.           - NetWare Btrieve v6.1 File Format -- Addresses some of the
  179.           differences between the NetWare Btrieve v6.1, v6.0, and v5.x file
  180.           formats.
  181.  
  182.           - NetWare Btrieve v6.1 Record Locking -- Describes the new
  183.           implementation of record locking within concurrent transactions.
  184.  
  185.           - NetWare Btrieve v6.1 Operations -- Highlights the new NetWare
  186.           Btrieve v6.1 chunk operations and the restrictions that apply when
  187.           using NetWare Btrieve v6.0 to operate on records larger than 64 KB.
  188.  
  189.           - NetWare Btrieve v6.1 Utilities -- Provides important notes on
  190.           NetWare Btrieve's logging feature.
  191.  
  192.           - NetWare Btrieve v6.1 Requesters -- Highlights the new NetWare
  193.           Btrieve v6.1 configuration options for the DOS and OS/2 Requesters.
  194.  
  195.           - NetWare Btrieve v6.1 Communications Programs -- Describes the
  196.           enhanced NetWare Btrieve Message Router that provides NetWare
  197.           Btrieve support for NLMs that need to run in the IOEngine of a
  198.           NetWare SFT III server.
  199.  
  200.           - NetWare Btrieve v6.1 Status Codes -- Discusses error conditions
  201.           specific to different versions of NetWare Btrieve.
  202.  
  203.  
  204.      NetWare Btrieve v6.1 File Recovery
  205.      ----------------------------------
  206.  
  207.      If you have a previous version of NetWare Btrieve and you are upgrading
  208.      to NetWare Btrieve v6.10c, ensure that you have uncorrupted Btrieve files
  209.      before continuing any further.  To detect file corruption, perform either
  210.      of the following procedures for each Btrieve file immediately after
  211.      installing NetWare Btrieve v6.10c.
  212.  
  213.           - Method 1 -- Implement this procedure if you have large files and
  214.           are interested in detecting PAT corruption only.
  215.  
  216.           - Method 2 -- Implement this procedure if you are interested in
  217.           detecting PAT corruption as well as other types of file corruption.
  218.  
  219.      NOTE:  Before you perform either procedure, make a backup of your Btrieve
  220.      files.
  221.  
  222.  
  223.      Method 1 -- Detecting PAT Corruption
  224.  
  225.           1. Determine the page size of each Btrieve file using the BUTIL
  226.           -STAT command.
  227.  
  228.           2. Use the BUTIL -SALVAGE command on each Btrieve file.
  229.  
  230.      Note: The SALVAGE command does not recover records from your Btrieve
  231.      file.  Therefore, this repair procedure will not take as long to complete
  232.      as when using the BUTIL -RECOVER command.
  233.  
  234.                a. If the utility does not report PAT corruption, the file is
  235.                fine. You do not have to take further corrective measures.
  236.  
  237.                b. If the utility reports PAT corruption, proceed to step 3.
  238.  
  239.           3. The utility asks if you wish to repair the file.    Select Yes
  240.           and provide the page size that you recorded for the file in step 1.
  241.  
  242.           4. Use the BUTIL -SALVAGE command a second time on each Btrieve
  243.           file.
  244.  
  245.                a. If the utility fully recovers the PAT pages on the first
  246.                run, it reports no errors.  The file is fine.     You do not
  247.                need to take further corrective measures.
  248.  
  249.                b. If the utility again reports PAT corruption, proceed to step
  250.                5.
  251.  
  252.           5. Make sure you have enough disk space to hold two copies of the
  253.           Btrieve file you are working with.
  254.  
  255.           6. Use the BUTIL -CLONE command to create a duplicate empty Btrieve
  256.           file.
  257.  
  258.           7. Use the BUTIL -COPY command to recover records from the damaged
  259.           file and insert them into the new file.
  260.  
  261.           8. You may now resume normal operation with your NetWare Btrieve
  262.           application.
  263.  
  264.  
  265.      Method 2 -- Detecting PAT Corruption and Other Types of Corruption
  266.  
  267.           1. Use the BUTIL -SALVAGE command on each Btrieve file.
  268.  
  269.                a. If the utility does not report PAT corruption, the file is
  270.                fine.     You do not need to take further corrective measures.
  271.  
  272.                b. If the utility reports PAT page corruption, proceed to step
  273.                2.
  274.  
  275.           2. The utility asks if you wish to repair the file.    Select No.
  276.  
  277.           3. Make sure you have enough disk space to hold two copies of the
  278.           Btrieve file you are working with.
  279.  
  280.           4. Create a description file for each Btrieve file that must be
  281.           recovered.  (See Appendix A, "Description Files" in the "Btrieve
  282.           Installation and Operation" manual for instructions.)
  283.  
  284.           5. Use the BUTIL -CREATE command to create a duplicate empty Btrieve
  285.           file. (Using the CREATE command ensures an uncorrupted Btrieve
  286.           header.   You can also use the BUTIL -CLONE command to create the
  287.           duplicate empty Btrieve file, but this command does not guarantee a
  288.           clean header.)
  289.  
  290.           6. Use the BUTIL -COPY command to recover records from the damaged
  291.           file and insert them into the new file.
  292.  
  293.           7. You may now resume normal operation with your NetWare Btrieve
  294.           application.
  295.  
  296.  
  297.      NetWare Btrieve v6.1 File Format
  298.      --------------------------------
  299.  
  300.      When creating files, Btrieve v6.0 and v6.1 use a new file format that
  301.      allows faster data access than possible with versions of Btrieve prior to
  302.      v6.0.  This new file format, first introduced in Btrieve v6.0, has been
  303.      slightly modified in Btrieve v6.1.  For more information on the Btrieve
  304.      v6.1 file format, refer to the "Btrieve Programmer's Manual" included in
  305.      the NetWare Btrieve v6.1 Developer's Kit Supplement, which is available
  306.      through the Novell Professional Developers' Program (PDP).
  307.  
  308.      When working with Btrieve files created with different versions of
  309.      Btrieve, consider the following.
  310.  
  311.           - New file features supported by Btrieve v6.1 include the following:
  312.           multiple alternate collating sequences (ACSs), locale-specific ACSs,
  313.           Variable-tail Allocation Tables (VATs), and the ability to mark a
  314.           file as using index balancing.
  315.  
  316.      Btrieve v6.1 returns a file version of 6.1 if the file specified in a
  317.      Stat operation or BUTIL -STAT command was created with multiple ACSs,
  318.      locale-specific ACSs, VATs, or the index balancing option.
  319.  
  320.      NOTE:  Files created with any of these features are created in the
  321.      Btrieve v6.1 file format.  If Btrieve v6.1 creates a file without any of
  322.      these features, it creates the file in the Btrieve v6.0 file format by
  323.      default.  You can override the v6.0 default and create Btrieve v5.x files
  324.      by using the Setup utility.  Refer to Chapter 3, "Installing and
  325.      Configuring Btrieve" in the "Btrieve Installation and Operation" manual
  326.      for more information on the Setup utility.
  327.  
  328.           - Btrieve v6.0 operates on a file created by Btrieve v6.1, unless 
  329.           the file uses multiple ACSs, locale-specific ACSs, VATs, or  the
  330.           balanced index flag.  That is, Btrieve v6.0 cannot open a  file that
  331.           uses the Btrieve v6.1 file format.
  332.  
  333.      NOTE:  Btrieve v6.0 returns a Status Code 30 (The file specified is not a
  334.      Btrieve file) when you attempt to open a file created in the Btrieve v6.1
  335.      file format.  (This is generally true whenever you use an earlier Btrieve
  336.      version to open a file that has a more recent Btrieve file format.)
  337.  
  338.           - Btrieve v6.1 can open files that were created with earlier
  339.           versions of Btrieve.  For example, Btrieve v6.0 can open files
  340.           created with Btrieve v5.x, and Btrieve v6.1 can open files created
  341.           with Btrieve v5.x or v6.0.  Additionally, Btrieve v6.1 can write to
  342.           files using the existing file format.  In other words, Btrieve v6.1
  343.           writes to v5.x files using the v5.x file format and writes to v6.0
  344.           files using the v6.0 file format.
  345.  
  346.      NOTE:  When Btrieve v6.1 opens files from earlier versions, it does not
  347.      convert them automatically to the v6.1 file format. For example, if you
  348.      use Btrieve v6.1 to open a v6.0 file, Btrieve v6.1 does not convert the
  349.      v6.0 file to a v6.1 file format. However, if an application uses Btrieve
  350.      v6.10a on a v6.0 file and creates an index that uses a second ACS or a
  351.      locale-specific ACS, the file format will be upgraded to a version 6.1,
  352.      thus preventing the file from being opened by an earlier Btrieve version,
  353.      which would not recognize these features.
  354.  
  355.      If your database contains files created with versions of NetWare Btrieve
  356.      prior to v6.1, you may want to upgrade them to take advantage of the
  357.      NetWare Btrieve v6.1 features.  The Btrieve Rebuild utility converts
  358.      Btrieve data files to the v6.1 file format.  Refer to Chapter 3,
  359.      "Installing and Configuring Btrieve" in the "Btrieve Installation and
  360.      Operation" manual for information on how to rebuild your existing Btrieve
  361.      files.
  362.  
  363.           - NetWare Btrieve v5.x cannot open files that have a v6.0 or v6.1
  364.           file format.
  365.  
  366.      NOTE:  If you are using NetWare Btrieve v6.1 and you need backward
  367.      compatibility with Btrieve v5.x, use the Btrieve Setup option Create
  368.      Btrieve Files in Pre v6.x Format.  This option allows you to create files
  369.      with NetWare Btrieve v6.1 and use them with Btrieve v5.x.  (Keep in mind,
  370.      however, that many of the NetWare Btrieve v6.1 features require the
  371.      NetWare Btrieve v6.1 file format.)  Refer to Chapter 3, "Installing and
  372.      Configuring Btrieve" in the "Btrieve Installation and Operation" manual
  373.      for more information on the Setup utility.
  374.  
  375.           - NetWare Btrieve v6.1 supports a longer STS data type than NetWare
  376.           SQL.
  377.  
  378.      NOTE:  Make sure that the length of the STS data type does not exceed 15
  379.      bytes if you plan to use the NetWare Btrieve v6.1 files with NetWare SQL.
  380.  
  381.           - NetWare Btrieve v6.1 allows the creation of an STS data type index
  382.           in files using the NetWare Btrieve v6.0 file format.
  383.  
  384.      IMPORTANT:     If you use NetWare Btrieve v6.00d or an earlier Btrieve
  385.                     version to access a file with an STS data type index, a
  386.                     server abend may occur.
  387.  
  388.  
  389.      NetWare Btrieve v6.1 Record Locking
  390.      -----------------------------------
  391.  
  392.      NetWare Btrieve v6.1 provides more concurrency by allowing true
  393.      record-level locking in concurrent transactions.  An explicit record lock
  394.      (by adding a bias to the Get and Step operations) does not lock the
  395.      corresponding data page; it locks only that particular record.
  396.      Additionally, NetWare Btrieve v6.10b/c provides the ability to share
  397.      locks between multiple cursors of the same file in an application.
  398.  
  399.      Successful locking of a record (inside or outside a transaction)
  400.      guarantees that no other client is able to update or delete that record. 
  401.      In other words, when a user performs an Update or Delete operation on a
  402.      record that he has previously locked, he will eventually succeed unless a
  403.      deadlock situation is detected. (A deadlock occurs when two or more
  404.      clients are each waiting on resources that one of the clients has not yet
  405.      released.)
  406.  
  407.      If an application opens the same file multiple times, the locks issued by
  408.      different cursors do not block each other.  The cursors are still
  409.      independent in the sense that they cannot explicitly unlock (using an
  410.      Unlock operation) the records that were locked by the other cursors. 
  411.      After a cursor has read a record with a lock, a second cursor can update
  412.      or delete the record regardless whether this second cursor locked the
  413.      record.  The first cursor will not get an error until it tries to delete
  414.      or update that record.
  415.  
  416.      In general, when implementing multiple cursors within a concurrent
  417.      transaction, locks obtained on a cursor before the application starts a
  418.      concurrent transaction are automatically released when the cursor becomes
  419.      an active participant of that transaction. (A cursor becomes an active
  420.      participant of a concurrent transaction if a lock is requested or an
  421.      Insert/Delete/Update operation is executed with that cursor.)    The
  422.      transaction does not have any effect on the inactive cursors.  That is,
  423.      locks obtained before the transaction are still maintained after
  424.      ending/aborting the transaction of inactive cursors.
  425.  
  426.  
  427.      NetWare Btrieve v6.1 Operations
  428.      -------------------------------
  429.  
  430.      NetWare Btrieve v6.1 supports the following new Btrieve operations.  For
  431.      more information about these new operations, refer to the "Btrieve
  432.      Programmer's Manual" included in the NetWare Btrieve v6.1 Developer's Kit
  433.      Supplement, which is available through the Novell Professional
  434.      Developers' Program (PDP).
  435.  
  436.           - Find Percentage and Get By Percentage -- Windows-oriented
  437.           applications can use these new operations for implementing scroll
  438.           bars.
  439.  
  440.           - Get Direct/Chunk and Update Chunk -- NetWare Btrieve v6.1 allows
  441.           applications to operate on portions of a record, called "chunks,"
  442.           rather than on the entire record.  Through the new Get Direct/Chunk
  443.           and Update Chunk operations, NetWare Btrieve v6.1 supports records
  444.           larger than 64 KB.
  445.  
  446.      NOTE:  Applications can use the new chunk operations to build records
  447.      larger than 64 KB in files that use the NetWare Btrieve v6.0 file format.
  448.      When NetWare Btrieve v6.0 operates on files containing records larger
  449.      than 64 KB, however, the following restrictions apply.
  450.  
  451.                - If you use an Update Chunk operation in a file that uses the
  452.                NetWare Btrieve v6.0 file format, one of the file's Free Space
  453.                Lists may be left in a state that can cause NetWare Btrieve
  454.                v6.00d or an earlier NetWare Btrieve version to overwrite its
  455.                own cache; a server abend may occur.
  456.  
  457.                - NetWare Btrieve v6.0 does not recognize the Get Direct/Chunk
  458.                or Update Chunk operations, and therefore can perform only
  459.                operations that update or retrieve entire records.  Those
  460.                "entire record" operations can retrieve or update only up to 64
  461.                KB of a record because the operations' data buffer length
  462.                parameter, which specifies the amount of data to update or
  463.                retrieve, can contain a maximum value of 64 KB.
  464.  
  465.                - If you use an Update Chunk operation to create a record
  466.                larger than 64 KB in a file that uses the NetWare Btrieve v6.0
  467.                file format, NetWare Btrieve v6.0 (which can use operations
  468.                only to update or retrieve entire records) cannot retrieve more
  469.                than the first 64 KB of the record.
  470.  
  471.                NetWare Btrieve v6.0 returns a Status Code 22 (The data buffer
  472.                parameter is too short) or a Status Code 97 (The communications
  473.                buffer is too small) to indicate that there is more data to be
  474.                retrieved.
  475.  
  476.                - Because NetWare Btrieve v6.0 does not recognize the Update
  477.                Chunk operation, you cannot use NetWare Btrieve v6.0 to modify
  478.                a record that is larger than 64 KB and still have the resulting
  479.                record be larger than 64 KB.  You can use the Update operation
  480.                to shorten such a record.  The length of the record resulting
  481.                from a successful Update operation is defined by the
  482.                operation's data buffer length parameter, which has a maximum
  483.                value of 64 KB.
  484.  
  485.  
  486.      NetWare Btrieve v6.1 Utilities
  487.      ------------------------------
  488.  
  489.      Btrieve Monitor Utility  (BTRMON.NLM) -- The NetWare Btrieve v6.1 Monitor
  490.                               utility (BTRMON.NLM) replaces the NetWare
  491.                               Btrieve v5.x Console utility (BCONSOLE.NLM).
  492.  
  493.      IMPORTANT:               NLM applications that call NetWare Btrieve must
  494.                               issue a Btrieve Reset before unloading.  Failure
  495.                               to do so may lead to a server abend when you try
  496.                               to use the Btrieve Monitor utility to monitor
  497.                               the NLM application's activity.
  498.  
  499.      Rebuild Utility          (BREBUILD.NLM) -- This new Btrieve utility
  500.                               allows you to upgrade files created with
  501.                               versions of NetWare Btrieve prior to v6.0.  Use
  502.                               this utility to upgrade your files to take
  503.                               advantage of the NetWare Btrieve v6.1
  504.                               features. For more information about rebuilding
  505.                               your existing files, refer to "Rebuilding
  506.                               Existing Btrieve Files" in Chapter 3 of the
  507.                               "Btrieve Installation and Operation" manual.
  508.  
  509.           NOTE:     Before running the Rebuild utility (either from the
  510.                     command line or through the Setup utility), you must start
  511.                     NetWare Btrieve v6.1.
  512.  
  513.      Roll Forward Utilities (BROLLFWD.EXE, PBROLL.EXE, and WBROLL.EXE) -- When
  514.      using NetWare Btrieve's logging feature and the Roll Forward utility,
  515.      consider the following:
  516.  
  517.           - NetWare Btrieve does not allow a log file to contain log entries
  518.           created by different versions of NetWare Btrieve.  That is, all
  519.           entries in a log file must be logged under the same version of
  520.           NetWare Btrieve.  Otherwise, NetWare Btrieve displays a system error
  521.           message on the server console and ignores logging for the Btrieve
  522.           file.
  523.  
  524.           - If you need to restart NetWare Btrieve, specify the same index
  525.           balancing setting that was used when you first loaded NetWare
  526.           Btrieve (after a backup) and performed logging.  Otherwise, you may
  527.           receive a Status Code 43 (The specified record is invalid) when you
  528.           run the Roll Forward utility.
  529.  
  530.  
  531.           - If you need to run the Roll Forward utility (for example, after a
  532.           system crash), load the same version of Btrieve and specify the same
  533.           index balancing setting that was used during logging.  Otherwise,
  534.           you may receive a Status Code 43 (The specified record is invalid).
  535.  
  536.           NOTE:     If you want to switch to a different version of NetWare
  537.                     Btrieve, or you want to change the index balancing
  538.                     setting, first create a backup of the Btrieve files to be
  539.                     logged and then delete the corresponding log files.
  540.  
  541.           - If you attempt to create a log file for a Btrieve file that
  542.           contains records larger than 57 KB, you may receive a Status Code 43
  543.           (The specified record is invalid) when you run the Roll Forward
  544.           utility.
  545.  
  546.           The NetWare Btrieve v6.1 BROLLFWD.EXE file for DOS workstations
  547.           replaces the NetWare Btrieve v6.0 file DBROLL.EXE.
  548.  
  549.  
  550.      NetWare Btrieve v6.1 Requesters
  551.      -------------------------------
  552.  
  553.           NetWare Btrieve Requester for UnixWare -- This new Requester
  554.           provides UnixWare clients with access to Btrieve data residing on a
  555.           NetWare Btrieve server.  For detailed information about this
  556.           Requester, refer to the separate Readme document, BTRUNIX.TXT, that
  557.           is included in this upgrade.
  558.  
  559.           NetWare Btrieve Requester for DOS -- This Requester has three new
  560.           configuration options.  For detailed information about this
  561.           Requester, refer to Chapter 4 in the "Btrieve Installation and
  562.           Operation" manual.
  563.  
  564.           - NetWare Runtime Server Support (/C) -- Enables or disables NetWare
  565.           Runtime support.
  566.  
  567.           - DOS Session Load (/L) -- Allows you to load another instance of
  568.           the Btrieve DOS Requester even if it is already loaded. This option
  569.           is useful if you want to run Windows applications using the Btrieve
  570.           DOS Requester while running DOS VM applications that are also using
  571.           the Requester.
  572.  
  573.           - Real-Time Data Compression (/O) -- Helps reduce network traffic by
  574.           reducing the number of packets required to complete a request to
  575.           Btrieve.
  576.  
  577.           NetWare Btrieve Requester for OS/2 -- This Requester also provides
  578.           Runtime Server support.  For detailed information about the NetWare
  579.           Btrieve OS/2 Requester, refer to Chapter 4 in the "Btrieve
  580.           Installation and Operation" manual.
  581.  
  582.  
  583.      NetWare Btrieve v6.1 Communications Programs
  584.      --------------------------------------------
  585.  
  586.      An enhanced NetWare Btrieve Message Router (BROUTER.NLM) and a new
  587.      communications module (BTRVSTUB.NLM) were provided with NetWare Btrieve
  588.      v6.10b to support NLMs that need to run in the IOEngine of a NetWare SFT
  589.      III server.  BROUTER.NLM redirects all Btrieve calls from the IOEngine to
  590.      NetWare Btrieve running in the MSEngine (Mirror Server Engine).
  591.  
  592.      To run NLMs that require Btrieve in the IOEngine, perform the following
  593.      steps:
  594.  
  595.           1. Load BTRIEVE.NLM and BSPXCOM.NLM in the MSEngine.  You can
  596.           configure the BSTART.NCF NetWare command file to load these NLMs.
  597.  
  598.           NOTE:  Depending on the particular NLM that you will be running in
  599.           the IOEngine, you may need to increase BSPXCOM's data buffer size
  600.           with the Btrieve Setup utility (BSETUP.NLM). Consult the "Btrieve
  601.           Installation and Operation" manual for more information.
  602.  
  603.           2. Load AFTER311.NLM in the IOEngine.
  604.  
  605.           3. Load BTRVSTUB.NLM in the IOEngine.  This NLM provides Btrieve API
  606.           names so that BROUTER.NLM may be loaded.
  607.  
  608.           4. Load BROUTER.NLM in the IOEngine.
  609.  
  610.           NOTE:  Depending on the particular NLM that you will be running in
  611.           the IOEngine, you may need to increase BROUTER's data buffer size
  612.           with the Btrieve Setup utility (BSETUP.NLM). Consult the "Btrieve
  613.           Installation and Operation" manual for more information.
  614.  
  615.  
  616.      NetWare Btrieve v6.1 Status Codes
  617.      ---------------------------------
  618.  
  619.      Status Code 11 (The specified filename is invalid) --  If you receive
  620.      this status code when you open a Btrieve file using the NetWare Btrieve
  621.      OS/2 Requester (BTRCALLS.DLL), make sure that you are using the latest
  622.      NetWare OS/2 Requester.
  623.  
  624.      Status Code 30 (The file specified is not a Btrieve file) -- NetWare
  625.      Btrieve v6.0 returns this status code when you attempt to open a file
  626.      that has the NetWare Btrieve v6.1 file format.  (This is generally true
  627.      whenever you use an earlier NetWare Btrieve version to open a file that
  628.      has a more recent file format.)
  629.  
  630.      Status Code 43 (The specified record address is invalid) -- The Btrieve
  631.      Roll Forward utility receives this status code when the address acquired
  632.      from the Free Space List of the Btrieve file during an Insert operation
  633.      at roll forward time is different from the one received at logging time.
  634.  
  635.      The synchronization problem with Free Space Lists occurs when you use
  636.      different versions of Btrieve or the same Btrieve version but with a
  637.      different index balancing setting.
  638.  
  639.      The following is a summary of the specific conditions for which Status
  640.      Code 43 can be returned:
  641.  
  642.           - During logging, you loaded Btrieve multiple times and did not
  643.           specify the same index balancing setting each time.
  644.  
  645.           - You inserted or updated a record larger than 57 KB.
  646.  
  647.           - At roll forward time, you loaded a different version of NetWare
  648.           Btrieve or the same NetWare Btrieve version but with a different
  649.           index balancing setting from what you used at logging time. To
  650.           correct the synchronization problem with Free Space Lists, load the
  651.           proper version of NetWare Btrieve with the proper index balancing
  652.           setting.
  653.  
  654.      Status Code 44 (The specified key path is invalid) -- NetWare Btrieve
  655.      v6.1 returns this code for some situations in which earlier versions of
  656.      NetWare Btrieve returned Status Code 82 (The application lost
  657.      positioning).  These situations can occur when you define the key
  658.      attribute to be manual or null (all-segment and any-segment). If you have
  659.      an existing NetWare Btrieve application that checked for Status Code 82,
  660.      you may want to rewrite the application to check for Status Code 44 as
  661.      well.
  662.  
  663.      Refer to Chapter 2 in the "Btrieve Programmer's Manual" (included in the
  664.      NetWare Btrieve v6.1 Developer's Kit Supplement) for more information
  665.      about all-segment and any-segment null keys.
  666.  
  667.      Status Code 102 (Insufficient stack space is available) -- NetWare
  668.      Btrieve v6.1 requires 3 KB of stack space. If your NLM application
  669.      receives this status code, try increasing the size of the stack in your
  670.      application.  You may need more than 3 KB of stack space if you are
  671.      accessing files defined by NetWare SQL as being under referential
  672.      integrity (RI) constraints.  Because NetWare Btrieve uses recursion when
  673.      enforcing these constraints, at least 3KB of stack space should be
  674.      available when you make the Btrieve call.
  675.  
  676.  
  677. NetWare Btrieve v6.1 Program Files
  678. ==================================
  679.  
  680.      The first part of this section includes information about the files that
  681.      comprise NetWare Btrieve v6.1.  The second part lists the specific files
  682.      included in this NetWare Btrieve v6.10c Upgrade.
  683.  
  684.  
  685.      Components of NetWare Btrieve v6.1
  686.      ----------------------------------
  687.  
  688.      The NetWare Btrieve v6.1 program files included in this upgrade package
  689.      can be grouped into the following categories:
  690.  
  691.      - Files related to the NetWare v3.11 environment
  692.      - Files related to server operations
  693.      - Files related to DOS workstation operations
  694.      - Files related to Windows workstation operations
  695.      - Files related to OS/2 workstation operations
  696.      - Files related to UnixWare workstation operations
  697.  
  698.      The following lists describe the NetWare Btrieve v6.1 program files in
  699.      each category.
  700.  
  701.      - Files related to the NetWare v3.11 environment:
  702.  
  703.           AFTER311.NLM   NLM that NetWare Btrieve v6.1 requires in a NetWare
  704.                          v3.11 environment.
  705.  
  706.           CLIB.NLM       C Library for the NetWare v3.11 environment.
  707.  
  708.           NWLOCALE.DLL   National Language Support DLL for the NetWare v3.11
  709.                          environment. The /PUBLIC/WIN and /PUBLIC/OS2
  710.                          directories each contain a different NWLOCALE.DLL.
  711.  
  712.           NWSNUT.NLM     Graphics User Interface (GUI) NLM for the NetWare
  713.                          v3.11 environment.
  714.  
  715.  
  716.      - Files related to server operations:
  717.  
  718.           BDIRECT.NLM    Directory Services utility that allows you to install
  719.                          or remove a Btrieve server object in a NetWare 4
  720.                          environment.
  721.  
  722.           BDIRECT.MSG    Message file for BDIRECT.NLM (for the NetWare 4
  723.                          environment).
  724.  
  725.           BDROUTER.NLM   NLM that provides Directory Services support in a
  726.                          NetWare 4 environment.
  727.  
  728.           BDROUTER.MSG   Message file for BDROUTER.NLM (for the NetWare 4
  729.                          environment).
  730.  
  731.           BREBUILD.NLM   Rebuild utility that lets you convert existing
  732.                          NetWare Btrieve v5.x files to NetWare Btrieve v6.1
  733.                          format.
  734.  
  735.           BREBUILD.MSG   Message file for BREBUILD.NLM.
  736.  
  737.           BROUTER.NLM    NLM that allows server-based NetWare Btrieve
  738.                          applications to access Btrieve databases on remote
  739.                          servers.
  740.  
  741.           BROUTER.MSG    Message file for BROUTER.NLM.
  742.  
  743.           BSETUP.NLM     Btrieve installation and configuration utility.
  744.  
  745.           BSETUP.MSG     Message file for BSETUP.NLM.
  746.  
  747.           BSETUP.HLP     Help file for BSETUP.NLM.
  748.  
  749.           BSPXCOM.NLM    SPX communications agent.
  750.  
  751.           BSPXCOM.MSG    Message file for BSPXCOM.NLM.
  752.  
  753.           BSPXSTUB.NLM   NLM that allows you to use the Btrieve Monitor
  754.                          utility (BTRMON.NLM) when BSPXCOM.NLM is not loaded.
  755.  
  756.           BSPXSTUB.MSG   Message file for BSPXSTUB.NLM.
  757.  
  758.           BSTART.NCF     Batch file executed to start NetWare Btrieve.  This
  759.                          file also loads BSPXCOM.NLM and BROUTER.NLM (if
  760.                          NetWare Btrieve is configured to do so).
  761.  
  762.           BSTOP.NCF      Batch file executed to stop NetWare Btrieve.  This
  763.                          file also unloads BSPXCOM.NLM and BROUTER.NLM (if
  764.                          loaded).
  765.  
  766.           BTRIEVE.NLM    NetWare Btrieve Record Manager (database engine).
  767.  
  768.           BTRIEVE.MSG    Message file for BTRIEVE.NLM.
  769.  
  770.           BTRMON.NLM     Btrieve Monitor utility that lets you monitor the
  771.                          activity of Btrieve files, users, and communications
  772.                          resources.
  773.  
  774.           BTRMON.MSG     Message file for BTRMON.NLM.
  775.  
  776.           BTRMON.HLP     Help file for BTRMON.NLM.
  777.  
  778.           BTRVSTUB.NLM   NLM that BROUTER.NLM requires and that provides
  779.                          NetWare Btrieve support for NLMs that need to run in
  780.                          the IOEngine of a NetWare SFT III server.
  781.  
  782.           BUTIL.NLM      Btrieve Maintenance utility, which is a command line
  783.                          utility that allows you to create, manipulate, and
  784.                          recover Btrieve data files.
  785.  
  786.           BUTIL.MSG      Message file for BUTIL.NLM.
  787.  
  788.           RSPXSTUB.NLM   Module that resolves external references for the
  789.                          Btrieve Monitor utility (BTRMON.NLM) when BSPXCOM.NLM
  790.                          is not loaded.  If you want to use the Btrieve
  791.                          Monitor utility to monitor outgoing requests
  792.                          generated by the NetWare Btrieve Message Router
  793.                          (BROUTER.NLM) to another server and you do not want
  794.                          to load BSPXCOM.NLM, load RSPXSTUB.NLM instead of
  795.                          BSPXSTUB.NLM at the server.
  796.  
  797.           RSPXSTUB.MSG   Message file for RSPXSTUB.NLM.
  798.  
  799.  
  800.      - Files related to DOS workstation operations:
  801.  
  802.           BREQUEST.EXE   Btrieve Requester for DOS.
  803.  
  804.           BREQUEST.MSG   Message file for BREQUEST.EXE.
  805.  
  806.           BREQUTIL.EXE   Btrieve Requester utility that allows you to stop the
  807.                          Requester and to obtain the Requester's version
  808.                          number at a DOS workstation.
  809.  
  810.           BREQUTIL.MSG   Message file for BREQUTIL.EXE.
  811.  
  812.           BROLLFWD.EXE   Roll Forward utility for the DOS operating
  813.                          environment.  This utility recovers changes made to a
  814.                          Btrieve file between the time of the last backup and
  815.                          a system failure.
  816.  
  817.           BROLLFWD.MSG   Message file for BROLLFWD.EXE.
  818.  
  819.  
  820.      - Files related to Windows workstation operations:
  821.  
  822.           WBROLL.EXE     Roll Forward utility for the Windows operating
  823.                          environment.  This utility recovers changes made to a
  824.                          Btrieve file between the time of the last backup and
  825.                          a system failure.
  826.  
  827.           WBROLLRS.DLL   Resource file for WBROLL.EXE.
  828.  
  829.           WBTRCALL.DLL   Btrieve Requester for Windows.
  830.  
  831.           WBTRVRES.DLL   Resource file for the Btrieve Windows Requester.
  832.  
  833.           WNDBCNVT.EXE   Windows Conversion utility that converts the
  834.                          client-based Btrieve DLL (WBTRCALL.DLL) to
  835.                          WBTRLOCL.DLL.
  836.  
  837.           NOVDB.INI      Btrieve initialization file for the Btrieve Windows
  838.                          Requester.
  839.  
  840.  
  841.      - Files related to OS/2 workstation operations:
  842.  
  843.           PBROLL.EXE     Roll Forward utility for the OS/2 operating
  844.                          environment.  This utility recovers changes made to a
  845.                          Btrieve file between the time of the last backup and
  846.                          a system failure.
  847.  
  848.           PBTRVRES.DLL   Resource file for PBROLL.EXE.
  849.  
  850.           BTRCALLS.DLL   Btrieve Requester for OS/2.
  851.  
  852.           NDBCOMM.DLL    Communications handler for the Btrieve Requester for
  853.                          OS/2.
  854.  
  855.           NDBCNVT.EXE    OS/2 Conversion utility that converts the
  856.                          client-based Btrieve DLL (BTRCALLS.DLL) to
  857.                          BTRLOCL.DLL.
  858.  
  859.  
  860.      - Files related to UnixWare workstation operations:
  861.  
  862.           LIBBTRV.A      Archive Btrieve Interface Library.
  863.  
  864.           LIBCOMM.A      Archive Communications Interface Library.
  865.  
  866.           LIBBTRV.SO     Shared-object Btrieve Interface Library.
  867.  
  868.           LIBCOMM.SO     Shared-object Communications Interface Library.
  869.  
  870.           UNXCBTRV.O     C interface object file.
  871.  
  872.           BTRUNIX.TXT    Readme document that describes the Btrieve Requester
  873.                          for UnixWare.
  874.  
  875.  
  876.      NetWare Btrieve v6.10c Upgrade Files
  877.      ------------------------------------
  878.  
  879.      Self-Extracting File Name:  BTR61.EXE     Revision:  B
  880.  
  881.      Files Included    Size      Date      Time     Version
  882.  
  883.      \
  884.         BTR61.TXT            (This File)
  885.      \NW311\
  886.          CLIB.NLM     267068   12-16-92    7:32a
  887.        NWSNUT.NLM     160519   06-04-93    9:32a
  888.      AFTER311.NLM      25290   08-02-93    4:16p
  889.      \PUBLIC\
  890.        PBROLL.EXE      48500   01-29-93    3:08p
  891.      BREQUTIL.EXE      21775   01-30-93   12:32p
  892.        WBROLL.EXE      47504   01-29-93    3:56p
  893.      BROLLFWD.EXE      76062   01-29-93    2:40p
  894.         NOVDB.INI       2460   11-06-92   10:48a
  895.      WNDBCNVT.EXE      30926   01-30-93   12:08p
  896.       NDBCNVT.EXE      18192   01-29-93    1:40p
  897.      PBTRVRES.DLL      13360   01-29-93    3:08p
  898.      WBROLLRS.DLL      11984   01-29-93    3:56p
  899.      WBTRVRES.DLL      22912   01-30-93   12:16p
  900.       NDBCOMM.DLL      20343   08-25-93    3:40p
  901.      BROLLFWD.MSG       3717   01-29-93    2:40p
  902.      WBTRCALL.DLL      13131   05-13-93    4:00p
  903.      BREQUTIL.MSG        974   01-30-93   12:32p
  904.      BREQUEST.MSG       1180   08-05-93    2:24p
  905.      UNXCBTRV.O         1420   11-30-92   11:40a
  906.       LIBBTRV.A        21432   02-05-93    6:08p
  907.       LIBBTRV.SO       18268   02-05-93    6:08p
  908.       LIBCOMM.A        19120   02-05-93    6:08p
  909.       LIBCOMM.SO       18596   02-05-93    6:08p
  910.       BTRUNIX.DOC      12231   06-23-93   10:08a
  911.      BTRCALLS.DLL      17944   06-11-93    9:32a
  912.      BREQUEST.EXE      58888   08-09-93   10:00a
  913.      \PUBLIC\OS2\
  914.      NWLOCALE.DLL      34480   05-18-93    1:00p
  915.      \PUBLIC\WIN\
  916.      NWLOCALE.DLL      38800   05-18-93    1:00p
  917.      \SYSTEM\
  918.        BSETUP.NLM      72329   01-07-93   11:00a
  919.      BREBUILD.NLM      40745   08-26-93    1:32p
  920.      BSPXSTUB.NLM       1254   05-20-93    3:48p
  921.       BROUTER.NLM      21101   08-27-93   10:24a
  922.        BTRMON.NLM      75022   01-28-93    2:24p
  923.       BDIRECT.NLM      15609   01-26-93    3:00p
  924.       BROUTER.MSG        472   08-24-93    5:08p
  925.       BSPXCOM.NLM      18384   05-05-93    1:00p
  926.         BUTIL.NLM     200338   01-29-93    2:16p
  927.      RSPXSTUB.NLM       1743   05-20-93    3:48p
  928.        BTRMON.HLP      37065   01-22-93    4:32p
  929.        BSETUP.HLP      31141   12-18-92    9:08a
  930.      RSPXSTUB.MSG        243   05-05-93    1:24p
  931.      BREBUILD.MSG       5028   08-19-93    5:16p
  932.       BSPXCOM.MSG       1716   05-05-93    1:00p
  933.      BDROUTER.MSG        472   05-17-93    3:48p
  934.      BSPXSTUB.MSG        235   05-05-93    1:24p
  935.       BTRIEVE.MSG       2245   08-11-93    5:00p
  936.       BDIRECT.MSG       3665   01-26-93    3:00p
  937.       BTRIEVE.NLM     183697   08-16-93    1:32p
  938.         BUTIL.MSG       9320   01-29-93    2:16p
  939.        BTRMON.MSG       6468   01-28-93    2:24p
  940.        BSTART.NCF         99   11-05-92    4:24p
  941.         BSTOP.NCF         49   04-21-92    2:40p
  942.        BSETUP.MSG       7972   11-25-92   11:48a
  943.      BDROUTER.NLM      22685   05-17-93    3:48p
  944.      BTRVSTUB.NLM        950   08-27-93   10:32a
  945.  
  946.  
  947. Code Changes in NetWare Btrieve v6.10c
  948. ======================================
  949.  
  950.      The following information describes changes made to the NetWare Btrieve
  951.      v6.1 code.  This current code was released in November 1993 as NetWare
  952.      Btrieve v6.10c.  The descriptions for the NetWare Btrieve v6.10c engine
  953.      appear first, followed by those for the requesters, the utilities, and
  954.      the communications programs.
  955.  
  956.      Each description includes one or more search strings.  These search
  957.      strings indicate areas in which you may encounter the problem that this
  958.      specific code upgrade addresses.  The search strings may help you quickly
  959.      determine whether the code you need for a specific problem is included in
  960.      this upgrade package.
  961.  
  962.      NOTE:  In some cases, the text describes a problem or reported bug that
  963.      the update does NOT fix.  In those cases, use the workaround provided.
  964.  
  965.  
  966.      * * * * * * * * *
  967.  
  968.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  969.  
  970.      Search Strings:  BINARY KEY FLAG, CREATE COMMAND, EXTENDED KEY FLAG
  971.  
  972.      Problem Fixed by This Upgrade:
  973.  
  974.      If you set a key specification's key flag to both binary (4) and extended
  975.      (256) when creating a file, Btrieve creates the key as a binary rather
  976.      than an extended type.  This code upgrade ensures that NetWare Btrieve
  977.      ignores the binary key flag and successfully creates an extended key.
  978.  
  979.      * * * * * * * * *
  980.  
  981.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  982.  
  983.      Search Strings:  25, 59, CREATE KEY NUMBER -1, OPEN FILE
  984.  
  985.      Problem Fixed by This Upgrade:
  986.  
  987.      When you attempt to perform a Create operation using -1 as the key number
  988.      parameter on a file that is already open, NetWare Btrieve returns Status
  989.      Code 25 (Btrieve cannot create the specified file).    This code upgrade
  990.      ensures that NetWare Btrieve returns the correct status code, Status Code
  991.      59 (The specified file already exists).
  992.  
  993.      * * * * * * * * *
  994.  
  995.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  996.  
  997.      Search Strings:  66, 67, 72, 73, ABEND, DEADLOCK, DELETE, INSERT,
  998.      REFERENTIAL INTEGRITY, UPDATE
  999.  
  1000.      Problem Fixed by This Upgrade:
  1001.  
  1002.      When Referential Integrity (RI) is enabled on a database and two or more
  1003.      clients attempt to perform Insert, Delete, or Update file operations
  1004.      simultaneously, NetWare Btrieve may create a deadlock situation.  In
  1005.      addition, when two or more clients attempt to modify RI-referenced files,
  1006.      the server may end abnormally, or NetWare Btrieve may incorrectly return
  1007.      one of the following Status Codes:  66 (The maximum number of open
  1008.      databases has been exceeded), 67 (Btrieve cannot open the SQL data
  1009.      dictionaries), 72 (Btrieve cannot open the RI referenced file), or 73
  1010.      (The RI definition is out of sync).
  1011.  
  1012.      This code upgrade ensures that NetWare Btrieve handles such situations
  1013.      correctly.
  1014.  
  1015.      * * * * * * * * *
  1016.  
  1017.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  1018.  
  1019.      Search Strings:  DATA COMPRESSION, FREE SPACE BIT
  1020.  
  1021.      Problem Fixed by This Upgrade:
  1022.  
  1023.      When you create a file with both fixed-length records and data
  1024.      compression, NetWare Btrieve ignores the free-space specification.  This
  1025.      code upgrade ensures that the free space specification is now supported
  1026.      when you select data compression.
  1027.  
  1028.      * * * * * * * * *
  1029.  
  1030.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  1031.  
  1032.      Search Strings:  ABEND, HANG, REFERENTIAL INTEGRITY UTILITY /R OPTION
  1033.  
  1034.      Problem Fixed by This Upgrade;
  1035.  
  1036.      When you attempt to run the Referential Integrity utility (RIUTIL) with
  1037.      the /R option, the NetWare Btrieve engine may hang, or the server may end
  1038.      abnormally.    This code upgrade ensures that NetWare Btrieve handles
  1039.      RIUTIL -R operations correctly.
  1040.  
  1041.      * * * * * * * * *
  1042.  
  1043.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  1044.  
  1045.      Search Strings:  5.X FORMAT FILES, DUPLICATABLE/NON-DUPLICATABLE KEYS,
  1046.      CORRUPTED FILES
  1047.  
  1048.      Problem Fixed by This Upgrade:
  1049.  
  1050.      If you attempt to perform an illegal operation such as inserting a
  1051.      duplicate key into a file that does not allow duplicates, the Insert
  1052.      operation should fail.  In one specific situation, however, NetWare
  1053.      Btrieve does insert the record, but NetWare Btrieve inserts it
  1054.      incorrectly and does not update the file's indexes.
  1055.  
  1056.      Note that this situation occurs only when all four of the following
  1057.      conditions are in effect during the Insert operation:
  1058.  
  1059.           (1)  The file is in a pre-v6.x file format.
  1060.  
  1061.           (2)  The file allows only one record per data page.
  1062.  
  1063.           (3)  A succesful insert operation would cause NetWare Btrieve to
  1064.           allocate a new page to the file.
  1065.  
  1066.           (4)  The failed insert operation is followed by a successful insert.
  1067.  
  1068.      Although the Insert returns an error status code in this situation,
  1069.      indicating that the operation failed, the record is placed (incorrectly)
  1070.      in the file, and you can access that record with Step operations but not
  1071.      with Get operations.
  1072.  
  1073.      * * * * * * * * *
  1074.  
  1075.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  1076.  
  1077.      Search Strings:  132, 2 GB FILE SIZE, 512 PAGE SIZE, CORRUPTED FILE
  1078.  
  1079.      Problem Fixed by This Upgrade
  1080.  
  1081.      NetWare Btrieve specifies that v6.0 and v6.1 files with a page size of
  1082.      512 can be no larger than 2 gigabytes in size.  However, NetWare Btrieve
  1083.      does not enforce this limit.  As a result, when a file grows beyond the
  1084.      512 page-size limit, NetWare Btrieve corrupts the file or overwrites
  1085.      memory. This code upgrade ensures that NetWare Btrieve now returns Status
  1086.      Code 132 (The file is full).
  1087.  
  1088.      * * * * * * * * *
  1089.  
  1090.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  1091.  
  1092.      Search Strings:  80, 2+GB FILE, DELETE, STEP, UPDATE
  1093.  
  1094.      Problem Fixed by This Upgrade:
  1095.  
  1096.      NetWare Btrieve does not perform some operations correctly on files
  1097.      larger than 2 gigabytes in size.  Most notably, attempts to update or
  1098.      delete a record with a "physical" address larger than 2 gigabytes will
  1099.      fail, with NetWare Btrieve incorrectly returning a Status Code 80 (Record
  1100.      conflict.) Also, attempts to perform a Step Next operation to access a
  1101.      record with a "physical" address greater than 2 gigabytes incorrectly
  1102.      returns a record much closer to the beginning of the file.  This code
  1103.      upgrade ensures that NetWare Btrieve handles files larger than 2 gigbytes
  1104.      correctly.
  1105.  
  1106.      * * * * * * * * *
  1107.  
  1108.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  1109.  
  1110.      Search Strings:  COMPRESSION BUFFER, DEFAULT
  1111.  
  1112.      Enhancement:
  1113.  
  1114.      This release of NetWare Btrieve changes the value of one of the default
  1115.      Btrieve load parameters.  The default now specifies a compression buffer
  1116.      of 8 kilobytes rather than a compression buffer of zero.
  1117.  
  1118.      * * * * * * * * *
  1119.  
  1120.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  1121.  
  1122.      Search Strings:  PERFORMANCE DEGRADATION, STAT CALLS
  1123.  
  1124.      Problem Fixed by This Upgrade
  1125.  
  1126.      When an application makes a status call, NetWare Btrieve allocates memory
  1127.      dynamically.   Numerous STAT calls cause the engine to run more slowly,
  1128.      which is the result of the operating system occasionally allocating
  1129.      memory inefficiently.  This code upgrade ensures that numerous STAT calls
  1130.      do not cause undue performance degradation.
  1131.  
  1132.      * * * * * * * * *
  1133.  
  1134.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  1135.  
  1136.      Search Strings:  48, 49, -D LOAD OPTION, LOCALE-SPECIFIC ACS FILES,
  1137.      INVALID PRE V6.0 FILES, STS DATA TYPE
  1138.  
  1139.      Problem Fixed by This Upgrade:
  1140.  
  1141.      If you load NetWare Btrieve with the -d option (Create Btrieve Files in
  1142.      Pre v6.x Format), the engine incorrectly allows applications to create
  1143.      locale-specific alternate collating sequences (ACSs) and STS key types,
  1144.      both of which are Btrieve v6.1 file-format features.  This code upgrade
  1145.      ensures that NetWare Btrieve successfully blocks the creation of files
  1146.      with these features when you specify the -d option.  Instead, the engine
  1147.      correctly returns either Status Code 48 (The alternate collating sequence
  1148.      definition is invalid) or Status Code 49 (The extended key type is
  1149.      invalid), as appropriate.
  1150.  
  1151.      * * * * * * * * *
  1152.  
  1153.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  1154.  
  1155.      Search Strings:  KEY/FILE CORRUPTION, INSERTING RECORDS, TRANSACTION
  1156.  
  1157.      Problem Fixed by This Upgrade:
  1158.  
  1159.      After inserting records into a file as part of a transaction, NetWare
  1160.      Btrieve occasionally corrupts the data file.  This code upgrade ensures
  1161.      that NetWare Btrieve handles this type of operation without file
  1162.      corruption.
  1163.  
  1164.      * * * * * * * * *
  1165.  
  1166.      Product/Platform:  NetWare Btrieve - BTRIEVE.NLM, v6.10
  1167.  
  1168.      Search Strings:    FILES NOT CLOSED AFTER CONTINUOUS OPERATIONS
  1169.  
  1170.      Problem Fixed by This Upgrade:
  1171.  
  1172.  
  1173.      NetWare Btrieve occasionally fails to close files after they are removed
  1174.      from Continuous Operations mode.  Although NetWare Btrieve returns a zero
  1175.      from the call to end Continuous Operations mode, indicating that the
  1176.      operation was successful and the files released, the Btrieve Monitor
  1177.      Utility shows the files as still in use by the client who initiated
  1178.      Continuous Operations mode until that client issues a Reset call.  This
  1179.      code upgrade ensures that NetWare Btrieve successfully closes all files
  1180.      after completing a Continuous Operations procedure.
  1181.  
  1182.      * * * * * * * * *
  1183.  
  1184.      Product/Platform:   NetWare Btrieve Requester for DOS - BREQUEST.EXE,
  1185.      v6.10
  1186.  
  1187.      Search Strings:  RAM USAGE
  1188.  
  1189.      Problem Fixed by This Upgrade:
  1190.  
  1191.      The NetWare Btrieve DOS Requester uses 6K more RAM than earlier versions,
  1192.      causing NetWare Btrieve to return Status Code 1002 (Btrieve cannot
  1193.      allocate the memory needed).  This code upgrade ensures that NetWare
  1194.      Btrieve allocates the correct amount of RAM.
  1195.  
  1196.      * * * * * * * * *
  1197.  
  1198.      Product/Platform:   NetWare Btrieve Requester for DOS - BREQUEST.EXE,
  1199.      v6.10
  1200.  
  1201.      Search Strings:  12, NETWARE 4.X
  1202.  
  1203.      Problem:
  1204.  
  1205.      The NetWare Btrieve Requester for DOS (BREQUEST) returns Status Code 12
  1206.      (Btrieve cannot find the specified file) when you login to a NetWare 4.x
  1207.      server and then attempt to run the requester. The problem does not exist
  1208.      if you login to a NetWare 3.x server and then map a drive to the NetWare
  1209.      4.x server prior to running the requester.
  1210.  
  1211.      * * * * * * * * *
  1212.  
  1213.      Product/Platform:  NetWare Database Communications Requester for OS/2 -
  1214.      NDBCOMM.DLL, v6.10
  1215.  
  1216.      Search Strings:  3, OPEN, RESET/STOP, START TRANSACTIONS STATEMENTS, SPX
  1217.      CONNECTION
  1218.  
  1219.      Problem Fixed by This Upgrade:
  1220.  
  1221.      The Communications Requester keeps an SPX connection usage count that it
  1222.      increments after executing each START TRANSACTION statement. If you issue
  1223.      more than approximately 64,000 START TRANSACTION statements without
  1224.      issuing a RESET or STOP operation, the Requester resets the usage count
  1225.      to zero, resets the SPX connection, and closes the file. The next START
  1226.      TRANSACTION statement therefore returns Btrieve Status Code 3 (File Not
  1227.      Open).  This code upgrade ensures that the Requester handles such cases
  1228.      correctly.
  1229.  
  1230.      * * * * * * * * *
  1231.  
  1232.      Product/Platform:   NetWare Btrieve Requester Utility for DOS -
  1233.      BREQUTIL.EXE, v6.10
  1234.  
  1235.      Search Strings:  DATA BUFFER LENGTH, GARBAGE VERSION NUMBER
  1236.  
  1237.      Problem Fixed by This Upgrade:
  1238.  
  1239.      When you load the client version of Btrieve, the NetWare Btrieve
  1240.      Requester utility for DOS first prints the correct version number and
  1241.      then prints garbage characters.    This code upgrade ensures that Btrieve
  1242.      resets the data buffer length correctly after a version call, printing
  1243.      only the version number.
  1244.  
  1245.      * * * * * * * * *
  1246.  
  1247.      Product/Platform:   NetWare Btrieve Requester Utility for DOS -
  1248.      BREQUTIL.EXE, v6.10
  1249.  
  1250.      Search Strings:  RESET COMMAND
  1251.  
  1252.      Enhancement:
  1253.  
  1254.      This release of the NetWare Btrieve Requester utility has a new command,
  1255.      RESET.  The syntax is as follows:
  1256.  
  1257.           BREQUTIL -RESET [ConnectionID]
  1258.  
  1259.      This command performs a Btrieve Reset operation to release the resources
  1260.      used by Btrieve at a workstation.  RESET aborts any pending transactions,
  1261.      releases all locks, and closes all open files for the workstation.
  1262.  
  1263.      * * * * * * * * *
  1264.  
  1265.      Product/Platform:   NetWare Btrieve Maintenance Utility - BUTIL.NLM,
  1266.      v6.10
  1267.  
  1268.      Search Strings:  DUPLICATE KEYS, DUPLICATE POINTER FLAG, LINKED
  1269.      DUPLICATABLE STORAGE METHOD, STAT COMMAND
  1270.  
  1271.      Problem Fixed by This Upgrade:
  1272.  
  1273.      Executing the NetWare Btrieve Maintenance utility STAT command (BUTIL
  1274.      -STAT) does not print the number of available duplicate keys in a file
  1275.      that uses the linked duplicate method of storing duplicates.  After you
  1276.      drop one of the duplicate keys from that file, NetWare Btrieve does not
  1277.      set the duplicate pointer flag in the file header, so the Maintenance
  1278.      utility reports an incorrect number of available duplicate keys in the
  1279.      file. This code upgrade ensures that BUTIL -STAT always prints the actual
  1280.      number of available duplicate keys.
  1281.  
  1282.      * * * * * * * * *
  1283.  
  1284.      Product/Platform:   NetWare Btrieve Maintenance Utility - BUTIL.NLM,
  1285.      v6.10
  1286.  
  1287.      Search Strings:  22, DATA COMPRESSION, RECORD LENGTH GREATER THAN PAGE
  1288.      SIZE
  1289.  
  1290.      Problem Fixed by This Upgrade:
  1291.  
  1292.      The NetWare Btrieve Maintance utility (BUTIL) returns Status Code 22 (The
  1293.      data buffer parameter is too short) when you attempt to copy data from a
  1294.      Btrieve file that specifies data compression and also has a fixed record
  1295.      length larger than the page size of the file.  In addition, BUTIL fails
  1296.      to create such a file.   This code upgrade ensures that BUTIL creates and
  1297.      processes this type of file correctly.
  1298.  
  1299.      * * * * * * * * *
  1300.  
  1301.      Product/Platform:   NetWare Btrieve Maintenance Utility - BUTIL.NLM,
  1302.      v6.10
  1303.  
  1304.      Search Strings:  22, ACS, 5.X FILES, CLONE COMMAND, SUPPLEMENTAL INDEX
  1305.  
  1306.      Problem Fixed by This Upgrade:
  1307.  
  1308.      The NetWare Btrieve Maintenance utility - CLONE command (BUTIL -CLONE)
  1309.      returns Status Code 22 (The data buffer parameter is too short) when a
  1310.      supplemental key in a Btrieve 5.x file has an alternate collating
  1311.      sequence (ACS).  This code upgrade provides a larger buffer for this type
  1312.      of operation.
  1313.  
  1314.      * * * * * * * * *
  1315.  
  1316.      Product/Platform:   NetWare Btrieve Maintenance Utility - BUTIL.NLM,
  1317.      v6.10
  1318.  
  1319.      Search Strings:  FILE VERSION, REDIRECTION OUTPUT PROBLEM, STAT COMMAND
  1320.  
  1321.      Problem Fixed by This Upgrade:
  1322.  
  1323.      The NetWare Btrieve Maintenance utility STAT command (BUTIL -STAT) does
  1324.      not correctly redirect output after noting the file version.  This code
  1325.      upgrade ensures that BUTIL -STAT handles this type of situation
  1326.      correctly.
  1327.  
  1328.      * * * * * * * * *
  1329.  
  1330.      Product/Platform:   NetWare Btrieve Maintenance Utility - BUTIL.NLM,
  1331.      v6.10
  1332.  
  1333.      Search Strings:  BUFFER SIZE, 5.x FILES, HEX 1A CHARACTER, LOAD COMMAND
  1334.  
  1335.      Problem Fixed by This Upgrade:
  1336.  
  1337.      The NetWare Btrieve Maintenance utility -LOAD command (BUTIL -LOAD) stops
  1338.      the loading operation if it encounters a record that uses 0x1A as the
  1339.      first, or first and last characters in the file.  This code upgrade
  1340.      instructs the -LOAD command to ignore the hex 1A character in this
  1341.      situation.  In addition, this code change also increases the maximum
  1342.      buffer size to 57K for clients in order to accommodate handling large
  1343.      records for v5.x files.
  1344.  
  1345.      * * * * * * * * *
  1346.  
  1347.      Product/Platform:   NetWare Btrieve Maintenance Utility - BUTIL.NLM,
  1348.      v6.10
  1349.  
  1350.      Search Strings:  VATS OPERATIONS FAILURE
  1351.  
  1352.      Problem Fixed by This Upgrade:
  1353.  
  1354.      The NetWare Btrieve Maintenance utility (BUTIL) is not handling
  1355.      Variable-tail Allocation Tables (VATs) correctly, causing VAT operations
  1356.      to fail.  This code upgrade ensures that BUTIL handles VATs correctly.
  1357.  
  1358.      * * * * * * * * *
  1359.  
  1360.      Product/Platform:   NetWare Btrieve Maintenance Utility - BUTIL.NLM, v6.1
  1361.  
  1362.      Search Strings:  COPY COMMAND COPYING INCORRECT NUMBER OF RECORDS
  1363.  
  1364.      Problem Fixed by This Upgrade:
  1365.  
  1366.      The -COPY command does not always copy the specified number of records.
  1367.      This code upgrade ensures that BUTIL handles copying operations
  1368.      correctly.
  1369.  
  1370.      * * * * * * * * *
  1371.  
  1372.      Product/Platform:   NetWare Btrieve Maintenance Utility - BUTIL.NLM, v6.1
  1373.  
  1374.      Search Strings:  EMPTY FILE, LOAD COMMAND, VATS
  1375.  
  1376.      Enhancement:
  1377.  
  1378.      This code upgrade enables the NetWare Btrieve Maintenance utility (BUTIL)
  1379.      to load Variable-tail Allocation Tables (VATs) into an empty file.
  1380.  
  1381.      * * * * * * * * *
  1382.  
  1383.      Product/Platform:  Rebuild Utility - BREBUILD.NLM, v1.10
  1384.  
  1385.      Search Strings:  TTS BIT, CREATING TRANSACTIONAL FILES
  1386.  
  1387.      Problem Fixed by This Upgrade:
  1388.  
  1389.      The Rebuild utility does not work properly when you load NetWare Btrieve
  1390.      using the -i option (Create files as transactional), which instructs
  1391.      NetWare Btrieve to create a file with the TTS bit set.  This code upgrade
  1392.      ensures that the TTS bit is removed from a rebuilt transactional file
  1393.      prior to renaming it to its original filename.  After renaming the
  1394.      rebuilt file, the TTS bit is again set for that file.
  1395.  
  1396.      * * * * * * * * *
  1397.  
  1398.      Product/Platform:  Rebuild Utility - BREBUILD.NLM, v1.10
  1399.  
  1400.      Search Strings:  28, TEMPORARY FILE
  1401.  
  1402.      Problem Fixed by This Upgrade:
  1403.  
  1404.      When the NetWare Create operation fails to create the Rebuild utility's
  1405.      temporary file, the Create operation first returns Status Code 28 (The
  1406.      record length is invalid).  Then, although no temporary file was
  1407.      generated during the Create operation, the Rebuild utility still attempts
  1408.      to delete the non-existing file and then returns the message "BRebuild
  1409.      could not delete temporary file xxxx.tmp."  This code upgrade ensures
  1410.      that the Rebuild utility handles temporary files correctly.
  1411.  
  1412.      * * * * * * * * *
  1413.  
  1414.      Product/Platform:  Rebuild Utility - BREBUILD.NLM, v1.10
  1415.  
  1416.      Search Strings:  SPECIFYING MULTIPLE OPTIONS ON COMAND LINE
  1417.  
  1418.      Problem Fixed by This Upgrade:
  1419.  
  1420.      When you specify multiple options following the filename on the Rebuild
  1421.      utility's command line, BREBUILD ignores those options.  (If you specify
  1422.      only one option following the filename, BREBUILD displays the syntax Help
  1423.      screen indicating that you should specify options preceding the
  1424.      filename.) This code upgrade ensures that the Rebuild utility correctly
  1425.      parses all command-line options.
  1426.  
  1427.      * * * * * * * * *
  1428.  
  1429.      Product/Platform:  Roll Forward Utility for DOS - BROLLFWD.EXE, v 6.10
  1430.      Roll Forward Utility for MS Windows - WBROLL.EXE, v6.10 Roll Forward
  1431.      Utility for OS/2 - PBROLL.EXE, v6.10
  1432.  
  1433.      Search Strings:  4, DOUBLE SLASHES IN LOG FILE NAME, INCORRECT LOG FILE
  1434.      SPECIFICATION
  1435.  
  1436.      Problem Fixed by This Upgrade:
  1437.  
  1438.      The NetWare Btrieve Roll Forward utilities do not always work correctly
  1439.      when you enter a pathname to the log file that includes double slashes
  1440.      preceding the server name, as in the following example:
  1441.  
  1442.           \\server\vol:\path\btr.log
  1443.  
  1444.      For example, if the log file is on a different volume, the Roll Forward
  1445.      utilities return Status Code BROLLFWD-6.1-21 (The utility is unable to
  1446.      open \\server\vol:\path\logfile.  The number of the applicable system
  1447.      error code is 2).
  1448.  
  1449.      This code upgrade ensures that if you specify a pathname such as
  1450.      \\server\vol:\path\logfile, the Roll Forward utilities change that path
  1451.      to the following:
  1452.  
  1453.           \\server\vol\path\btr.log
  1454.  
  1455.      This is the pathname that appears on a print out of a log file.
  1456.  
  1457.      In addition, this code upgrade also ensures that the Roll Forward
  1458.      utilities accept any of the following as valid pathnames to a log file:
  1459.  
  1460.           \path\btr.fil
  1461.  
  1462.           \path\btr.fil=\path\btr.log
  1463.  
  1464.           \path\btr.fil=\\server\vol:\path\btr.log (where the volume is either
  1465.           the same or different than the default)
  1466.  
  1467.           \path\btr.fil=\\server\vol:path\btr.log
  1468.  
  1469.      * * * * * * * * *
  1470.  
  1471.      Product/Platform:  Roll Forward Utility for DOS - BROLLFWD.EXE, v 6.10
  1472.  
  1473.      Search Strings:  UNFORMATTED SCREEN DISPLAY
  1474.  
  1475.      Problem Fixed by This Upgrade:
  1476.  
  1477.      A number of Roll Forward messages are formatted incorrectly for screen
  1478.      output.  This code upgrade ensures that BROLLFWD correctly formats
  1479.      messages displayed on the workstation screen.
  1480.  
  1481.      * * * * * * * * *
  1482.  
  1483.      Product/Platform:  Roll Forward Utility for DOS - BROLLFWD.EXE, v 6.10
  1484.  
  1485.      Search Strings:  COMMAND-LINE FUNCTIONALITY
  1486.  
  1487.      Enhancement:
  1488.  
  1489.      This release of the NetWare Btrieve Roll Forward utility (BROLLFWD)
  1490.      includes the ability to use the command line to instruct NetWare Btrieve
  1491.      to roll your files forward.  Note, however, that the functionality of the
  1492.      utility has not changed.
  1493.  
  1494.      * * * * * * * * *
  1495.  
  1496.      Product/Platform:  Roll Forward Utility for DOS - BROLLFWD.EXE, v 6.10
  1497.  
  1498.      Search Strings:  DBROLL
  1499.  
  1500.      Problem Fixed by This Upgrade:
  1501.  
  1502.      The Roll Forward utility DBROLL.EXE, which was used in the DOS
  1503.      environment, is obsolete.  It is no longer supported because it could not
  1504.      be enabled for translation.  Instead, use BROLLFWD to roll your files
  1505.      forward in the DOS environment.
  1506.  
  1507.      * * * * * * * * *
  1508.  
  1509.      Product/Platform:  Roll Forward Utilities for DOS and MS Windows -
  1510.      BROLLFWD.EXE, v6.10 and WBROLL.EXE, v6.10
  1511.  
  1512.      Search Strings:  DISPLAYING KANJI DATA, /L OPTION
  1513.  
  1514.      Problem Fixed by This Upgrade:
  1515.  
  1516.      The Roll Forward utilities for DOS and MS Windows do not display Kanji
  1517.      characters correctly when you attempt a roll forward operation using the
  1518.      List File (/l) option.  This code ensures that the utilities print the
  1519.      correct Kanji data without displaying garbage characters.  In addition,
  1520.      this code also includes double-byte checking on print operations.
  1521.  
  1522.      * * * * * * * * *
  1523.  
  1524.      Product/Platform:  Roll Forward Utility for MS Windows - WBROLL.EXE,
  1525.      v6.10
  1526.  
  1527.      Search Strings:  ADD, OPENING FILE, OWNER NAME, QUEUE
  1528.  
  1529.      Problem Fixed by This Upgrade:
  1530.  
  1531.      The MS Windows Roll Forward utility does not apply the owner name on
  1532.      write operations to files that require such a name.  This occurs when the
  1533.      owner name level is 1 or 3.  This code upgrade ensures that WBROLL checks
  1534.      for a correct owner name when the file is added to the queue.  If,
  1535.      however, you enter an incorrect owner name, WBROLL prompts you to reenter
  1536.      that name if the owner level is 0 or 2, but it returns Status Code
  1537.      WBROLL-6.1-2 (Continue roll forward?) if the owner level is 1 or 3.
  1538.  
  1539.      * * * * * * * * *
  1540.  
  1541.      Product/Platform:  Roll Forward Utility for MS Windows - WBROLL.EXE,
  1542.      v6.10
  1543.  
  1544.      Search Strings:  DOUBLE BACKSLASH IN PATHNAME, ROLLFORWARD FAILURE
  1545.  
  1546.      Problem Fixed by This Upgrade:
  1547.  
  1548.      When you attempt to add a file located in a root directory to the queue,
  1549.      the MS Windows Roll Forward utilty incorrectly lists the file in the
  1550.      queue with a double backslash (\\) as the first characters in the
  1551.      pathname.  In addition, when you attempt to roll the file forward, WBROLL
  1552.      returns the following messages:
  1553.  
  1554.           WBROLL-6.10-8:  The following file was not found in BLOG.CFG
  1555.           \\<filename>.
  1556.  
  1557.           WBROLL-6.10-2:   Continue roll forward?
  1558.  
  1559.      This code upgrade ensures that WBROLL does not append a double backslash
  1560.      to the filename if the last character in the Btrieve directory name
  1561.      already contains a single backslash.
  1562.  
  1563.      * * * * * * * * *
  1564.  
  1565.      Product/Platform:  Roll Forward Utility for MS Windows - WBROLL.EXE,
  1566.      v6.10
  1567.  
  1568.      Search Strings:  ABORT OPERATION DOES NOT CLOSE BTRIEVE FILE
  1569.  
  1570.      Problem Fixed by This Upgrade:
  1571.  
  1572.      When you abort a roll forward operation before it completes, the MS
  1573.      Windows Roll Forward utility does not close the Btrieve file that is
  1574.      currently being rolled forward.  This code upgrade ensures that WBROLL
  1575.      handles this operation correctly.
  1576.  
  1577.      * * * * * * * * *
  1578.  
  1579.      Product/Platform:  Roll Forward Utility for MS Windows - WBROLL.EXE,
  1580.      v6.10
  1581.  
  1582.      Search Strings:  DIRECTORY ENDING IN BACKSLASH (\) CHARACTER
  1583.  
  1584.      Problem Fixed by This Upgrade:
  1585.  
  1586.      The MS Windows Roll Forward utility omits a backslash character (\)
  1587.      between the directory name and the filename when the directory name
  1588.      itself ends with a backslash.  (For example, WBROLL incorrectly shows the
  1589.      path x95x5C\test.btr as x95x5Ctest.btr.)     This code upgrade ensures
  1590.      that WBROLL handles directory names correctly.
  1591.  
  1592.      * * * * * * * * *
  1593.  
  1594.      Product/Platform:  Roll Forward Utility for MS Windows - WBROLL.EXE,
  1595.      v6.10
  1596.  
  1597.      Search Strings:  ENABLED FOR TRANSLATION
  1598.  
  1599.      Enhancement:
  1600.  
  1601.      This version of the MS Windows Roll Forward utility is enabled for
  1602.      translation.
  1603.  
  1604.      * * * * * * * * *
  1605.  
  1606.      Product/Platform:  Roll Forward Utility Resource File for MS Windows -
  1607.      WBROLLRS.DLL, v6.10
  1608.  
  1609.      Search Strings:  KANJI CHARACTERS, GARBAGE CHARACTERS, QUEUE-ADD
  1610.  
  1611.      Problem Fixed by This Upgrade:
  1612.  
  1613.      The MS Windows Roll Forward utilty displays garbage characters in some
  1614.      entry and filename fields that should contain Kanji characters.  This
  1615.      code upgrade changes the display character font in the resource file from
  1616.      ANSI_FIXED_FONT to OEM_FIXED_FONT, ensuring the correct display of the
  1617.      characters in the various fields.
  1618.  
  1619.      * * * * * * * * *
  1620.  
  1621.      Product/Platform:  Roll Forward Utility for OS/2 - PBROLL.EXE, v6.10
  1622.  
  1623.      Search Strings:  LIST OF FILES READ INCORRECTLY
  1624.  
  1625.      Problem Fixed by This Upgrade:
  1626.  
  1627.      The OS/2 Roll Forward utility does not correctly read the test file that
  1628.      contains the list of files to roll forward.  This code upgrade ensures
  1629.      that PBROLL handles such files correctly.
  1630.  
  1631.      * * * * * * * * *
  1632.  
  1633.      Product/Platform:  NetWare Btrieve SPX Communication Program -
  1634.      BSPXCOM.NLM, v6.10
  1635.  
  1636.      Search Strings:  PACKET PROCESSING
  1637.  
  1638.      Enhancement:
  1639.  
  1640.      The NetWare Btrieve SPX Communication Program (BSPXCOM) is processing
  1641.      packets twice.  This code upgrade ensures that BSPXCOM uses less CPU time
  1642.      by processing each packet only once.
  1643.  
  1644.      * * * * * * * * *
  1645.  
  1646.  
  1647. NetWare Btrieve Documentation
  1648. =============================
  1649.  
  1650.      The NetWare Btrieve v6.10c Upgrade includes the same "Btrieve
  1651.      Installation and Operation" manual that accompanied the NetWare Btrieve
  1652.      v6.10b upgrade package. Currently, you can print the v6.10b manual using
  1653.      the set of ASCII text files included in that upgrade.
  1654.  
  1655.      NOTE:  You can place an order for a printed manual through Novell
  1656.      Fulfillment.   For ordering information, see the "Novell Fulfillment"
  1657.      section below.
  1658.  
  1659.      This v6.10c upgrade package does not include an updated manual set,
  1660.      although it does note changes to the documentation.
  1661.  
  1662.  
  1663.      Documentation Updates, September 1993
  1664.      -------------------------------------
  1665.  
  1666.      The following documentation updates apply to the "Btrieve Installation
  1667.      and Operation" manual included in the v6.10b upgrade package.
  1668.  
  1669.      Chapter 3,     "Installing and Configuring Btrieve" -- Replace the
  1670.                     installation procedure in the "Using the NetWare INSTALL  
  1671.                     section with the infor Utility" section with the
  1672.                     information presented in the "Installation Procedure"
  1673.                     section of this Readme document.
  1674.  
  1675.      Chapter 4,     "Configuring and Using the Requesters" -- In the "Loading
  1676.                     the Windows Requester" section, change the name of the
  1677.                     Windows import library to WBTRCALL.LIB.
  1678.  
  1679.  
  1680.      Printing Btrieve Documentation
  1681.      ------------------------------
  1682.  
  1683.      You can print the "Btrieve Installation and Operation" manual v6.10b in
  1684.      ASCII format.
  1685.  
  1686.           1. Run BTR61M.EXE, the file that contains the document files.
  1687.  
  1688.           2. Print the document files, using a print utility of your choice.
  1689.  
  1690.           3. Photocopy the printed Btrieve manual as needed.
  1691.  
  1692.  
  1693.      Associated Documents
  1694.      --------------------
  1695.  
  1696.      For information about the Btrieve v6.1 file format and Btrieve
  1697.      operations, refer to the "Btrieve Programmer's Manual."  This manual is a
  1698.      component of the NetWare Btrieve v6.1 Developer's Kit Supplement, which
  1699.      is available through the Professional Developer's Program (PDP).
  1700.  
  1701.      NOTE:     Some NetWare Btrieve developers find it necessary or useful to
  1702.                provide data dictionaries with their Btrieve-based products. 
  1703.                (Dictionaries are Btrieve files that you create and maintain
  1704.                with the XQL products.)  In addition to XQL, NetWare SQL
  1705.                products, Developer's kits, and Xtrieve, there are also a
  1706.                number of third-party products that provide this functionality.
  1707.  
  1708.           For detailed information about data dictionaries, see "Using NetWare
  1709.           SQL to Access Relational Inormation from Btrieve Data," NetWare
  1710.           Application Notes, September 1992.
  1711.  
  1712.  
  1713. Novell Fulfillment
  1714. ==================
  1715.  
  1716.      The previous upgrade release of NetWare Btrieve, v6.10b, is also
  1717.      available on diskettes (5.25" and 3.5") and with a printed manual through
  1718.      Novell Fulfillment.  For ordering and price information, call
  1719.      1-800-UPDATE1 (domestic customers) or 317-364-7276 (international
  1720.      customers).  You can also place an order by fax (317-364-0787).
  1721.  
  1722.        ---------------------------------------------------
  1723.  
  1724.      Novell, Inc. has attempted to supply trademark information about company
  1725.      names, products, and services mentioned in this file.  The following list
  1726.      of trademarks was derived from various sources.
  1727.  
  1728.  
  1729.      NetWare, Novell, Btrieve, and XQL are registered trademarks of Novell,
  1730.      Inc.
  1731.  
  1732.      Application Notes, IPX/SPX, NetWare Btrieve, NetWare Loadable Module,
  1733.      NetWare Runtime, NetWare SQL, NLM, and XTRIEVE Plus are trademarks of
  1734.      Novell, Inc.
  1735.  
  1736.      NetWire is a registered service mark of Novell, Inc.
  1737.  
  1738.      CompuServe is a registered trademark of CompuServe, Incorporated.
  1739.  
  1740.      OS/2 is a registered trademark of International Business Machines
  1741.      Corporation.
  1742.  
  1743.  
  1744. **End of BTR61.TXT**
  1745.  
  1746.